<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>资料修改</title>

    <!-- bootstrap -->
    <link rel="stylesheet" href="./assets/css/bootstrap.min.css" />

    <!-- animate.css -->
    <link rel="stylesheet" href="./assets/css/animate.min.css" />

    <!-- MUI -->
    <link rel="stylesheet" href="./assets/plugins/mui/css/mui.min.css">

    <!-- 引入bootstrapValidator表单验证插件 -->
    <link rel="stylesheet" href="./assets/plugins/bootstrap-validator/bootstrapValidator.min.css">

    <!-- 城市组件 -->
    <link rel="stylesheet" href="./assets/plugins/city-picker/city-picker.css">

    <!-- 重置样式 -->
    <link rel="stylesheet" href="./assets/css/reset.css" />

    <!-- 公共样式 -->
    <link rel="stylesheet" href="./assets/css/common.css" />

    <!-- 页面独立的 -->
    <link rel="stylesheet" href="./assets/css/UserProfile.css" />
</head>

<body>
    <!-- 用户信息 -->
    <div class="user">
        <div class="avatar wow fadeInUp">
            <img src="./assets/images/avatar.png" style="width: 100%; height: 100%;object-fit: cover;" />
        </div>
    </div>

    <form class="profile wow fadeInUp" data-wow-delay="200ms">
        <div class="form-group">
            <label for="nickname">昵称</label>
            <input type="text" class="form-control" id="nickname" name="nickname" placeholder="请输入昵称" required />
        </div>

        <div class="form-group">
            <label for="mobile">手机号码</label>
            <input type="text" class="form-control" id="mobile" name="mobile" placeholder="请输入手机号码" readonly required />
        </div>

        <div class="form-group">
            <label for="password">密码</label>
            <input type="password" class="form-control" id="password" name="password" placeholder="请输入密码" />
        </div>

        <div class="form-group">
            <label for="gender">性别</label>
            <select class="form-control" id="gender" name="gender">
                <option value="">请选择</option>
                <option value="0">保密</option>
                <option value="1">男</option>
                <option value="2">女</option>
            </select>
        </div>

        <div class="form-group" style="position: relative;">
            <label for="email">城市</label>
            <div class='control-relative'>
                <input id="city" class="form-control" data-toggle="city-picker" type="text" />
            </div>
        </div>

        <div class="form-group">
            <label for="address">详细地址</label>
            <input type="text" class="form-control" id="address" name="address" placeholder="请输入详细地址" />
        </div>

        <!-- 头像 -->
        <div class="form-group" style="display: none;">
            <label for="address">头像</label>
            <input type="file" class="form-control" id="avatar" name="avatar" />
        </div>

        <div class="action">
            <button class="btn" type="submit">提交</button>
        </div>
    </form>
</body>

</html>
<!-- jquery  -->
<script src="./assets/js/jquery.min.js"></script>

<!-- bootstrap -->
<script src="./assets/js/bootstrap.min.js"></script>

<!-- wow.js -->
<script src="./assets/js/wow.min.js"></script>

<!-- MUI -->
<script src="./assets/plugins/mui/js/mui.min.js"></script>

<!-- 引入bootstrapValidator表单验证插件 -->
<script src="./assets/plugins/bootstrap-validator/bootstrapValidator.min.js"></script>

<!-- axios请求 -->
<script src="./assets/plugins/axios/axios.js"></script>
<script src="./assets/plugins/axios/request.js"></script>

<!-- 城市组件 -->
<script src="./assets/plugins/city-picker/city-picker.data.min.js"></script>
<script src="./assets/plugins/city-picker/city-picker.min.js"></script>

<!-- cookie -->
<script src="./assets/plugins/cookie.js"></script>

<!-- 校验用户是否登陆 -->
<script src="./assets/plugins/helper.js"></script>

<script>
    //实例化wow.js
    new WOW().init()

    // 回写
    let Business = cookie.get('Business') ? JSON.parse(cookie.get('Business')) : "{}";
    console.log(Business)

    if (Business) {
        $(".avatar img").attr('src', Business.avatar)
        $("#nickname").val(Business.nickname)
        $("#mobile").val(Business.mobile)
        $("#gender").val(Business.gender)
        $("#address").val(Business.address)
        if (Business.region) {
            if (['北京', '天津', '上海', '重庆'].includes(Business.province)) {
                $('#city').citypicker({
                    province: Business.province + '市',
                    city: Business.city,
                    district: Business.district
                });
            } else {
                $('#city').citypicker({
                    province: Business.province,
                    city: Business.city,
                    district: Business.district
                });
            }
        }
    }


    // 上传头像
    let img = null;
    $(".avatar").click(function () {
        $("#avatar").click()
    })
    $("#avatar").change(function (e) {
        img = e.target.files[0];
        let src = URL.createObjectURL(img);
        $(".avatar img").attr('src', src);
    })



    // 对form元素绑定校验规则：
    $("form").bootstrapValidator({
        // 图标
        feedbackIcons: {
            valid: 'glyphicon glyphicon-ok',
            invalid: 'glyphicon glyphicon-remove',
            validating: 'glyphicon glyphicon-refresh'
        },
        // 字段
        fields: {
            nickname: {
                validators: {
                    notEmpty: { // 非空校验
                        message: '昵称不能为空!'
                    },
                }
            },
            gender: {
                validators: {
                    notEmpty: { // 非空校验
                        message: '性别不能为空!'
                    }
                }
            },
            address: {
                validators: {
                    notEmpty: { // 非空校验
                        message: '地址不能为空!'
                    },
                    stringLength: { // 长度校验
                        min: 4,
                        max: 50,
                        message: '地址长度在%s~%s范围内！'
                    }
                }
            }
        }
    }).on('success.form.bv', function (e) {
        e.preventDefault();
    })



    $("form").submit(async function (e) {
        // 新建对象，接收表单字段
        let data = {
            id: Business.id
        }
        // serializeArray()收集form所有表单字段，每个字段包含name和value属性
        var fields = $("form").serializeArray();
        $.each(fields, function (i, field) {
            data[field.name] = field.value
        });
        console.log(data);

        // 获取地址行政区域代码，顺序区>市>省
        var citypicker = $("#city").data("citypicker");
        var code;
        code = citypicker.getCode("district") || citypicker.getCode("city") || citypicker.getCode("province");

        data.region = code;
        console.log(data.region);
        // 获取头像 将提交上去的头像显示出来
        if (img) {
            data.avatar = img;
        }

        // 使用upload方法，里面newformdata()才能上传成功
        let result = await UPLOAD({
            url: 'business/profile',
            params: data
        })
        if (result.code == 1) {
            // 存储用户信息
            cookie.set('Business', JSON.stringify(result.data))
            // 注册成功提示框
            mui.toast(result.msg, { duration: 'long', type: 'div' });
            setTimeout(() => {
                location.href = 'my.html'
            }, 1000)
        } else {
            mui.toast(result.msg, { duration: 'long', type: 'div' });
            $('form').data('bootstrapValidator').resetForm(true); // 重置校验
        }

    })
</script>